package main

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"io"
	"os"
)

func main(){

	// 禁用控制台颜色，当你将日志写入到文件的时候，你不需要控制台颜色。
	gin.DisableConsoleColor()

	path := "C:\\Users\\lenovo\\Desktop\\log\\"
	//判断路径是否存在，否则创建
	if !IsPathExist(path){
		err := os.Mkdir(path,0777)//创建路径，0777表示所有人有读、写、执行文件权限
		if err != nil {
			fmt.Println(err)
		}
	}
	//创建日志文件
	file,err := os.Create(path + "gin.log")
	if err != nil {
		fmt.Println(err)
	}
	// 如果你需要同时写入日志文件和控制台上显示，使用下面代码
	// gin.DefaultWriter = io.MultiWriter(f, os.Stdout)

	gin.DefaultWriter = io.MultiWriter(file)

	r := gin.Default()
	r.GET("/ping", func(c *gin.Context) {
		c.String(200,"pong")
	})
	r.Run()
}

// IsPathExist 判断路径是否存在
func IsPathExist(path string) bool{
	if fi, err := os.Stat(path); err != nil{
		return os.IsExist(err) //err!=nil,说明文件或文件夹不存在
	} else{
		return fi.IsDir() //err==nil,说明文件或文件夹存在
	}
}